System and method for tracking patent ownership change

ABSTRACT

In an example embodiment, a patent portfolio management tool automatically tracks changes in ownership information of a patent matter listed in a database at a patent registry. The method comprises receiving input from a user identifying the patent matter, with the input further including data associated with a plurality of fields of enquiry relating to a change in ownership information of the patent matter.

RELATED APPLICATIONS

This application is a continuation of and claims the benefit of priority under 35 U.S.C. §120 to U.S. Patent Application Ser. No. 13/253,825, filed on Oct. 5, 2011, which claims the benefit under 35 U.S.C. 119(e) of U.S. Provisional Patent Application Ser. No. 61/542,515 filed Oct. 3, 2011, which are incorporated herein by reference in their entireties and made a part hereof.

BACKGROUND

The management of a patent portfolio involves multiple stages. Initially, a decision is made as to what inventions are worth the investment of filing a patent application. Then, each filed patent application goes through prosecution with the patent office. Finally, for each patent that is allowed, maintenance fees must be paid at a variety of intervals to keep the patent in force. At any stage during its life, a patent application or patent may be assigned by the inventors to an assignee, or be assigned from one assignee to another. The assignee may be an individual or a corporation.

BRIEF DESCRIPTION OF DRAWINGS

Some embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings in which:

FIG. 1 is a system component diagram, according to an example embodiment.

FIG. 2 is a block diagram of a patent management system, according to an example embodiment.

FIG. 3 is a block diagram showing a method of tracking patent ownership change, according to an example embodiment.

FIG. 4 is a depiction of a user interface, according to an example embodiment.

FIG. 5 is a block diagram of machine in the example form of a computer system within which a set of instructions, for causing the machine to perform any one or more of the methodologies herein discussed, may be executed.

DETAILED DESCRIPTION

The life cycle of a patent may include multiple stages. These stages generally include invention, filing a patent application on the invention, prosecuting the patenting application to allowance or abandonment, determining whether to file any continuing applications, and paying maintenance fees on the allowed patent.

At each stage, one or more parties determine the best course of action to take with respect to the invention. For example, when determining whether or not to file a patent, the inventor may know what products are out in the technology area of the invention, a business manager may know how the invention fits in with a company's goals, and a patent attorney may have researched existing patents or application in the technology area of the patent. These parties will ultimately make the decision whether it is worth the initial investment of filing an application on the invention and then determine the next course of action at each future stage.

In some instances, an inventor, business manager or patent attorney may wish to track the patent activities of one or more competitors. The automatic provision of up-to-date information relating to change of ownership or assignments occurring in a competitor's patent portfolio may be particularly helpful to the inventor, business manager or patent attorney in planning strategy or making informed business decisions.

In various embodiments, a patent management system includes tools to help the parties involved in the patenting process make decisions at each stage in the life of a patent. These tools may also be used for general research by parties not immediately involved with the patenting of the invention. Additionally, these tools may be used as standalone tools, in combination with other tools, and in combination with other patent management systems. Examples of tools include, but are not limited to prosecution analytics, reference management, prior art analytics, docketing management, claim mapping, claim analytics, portfolio analytics, external database (e.g., PAIR) analytics, annuity management, and strategic monitoring. The systems, methods and tools of the present invention set forth in this specification are described in relation to a patent management system and patent matters, but it will be understood that the present invention could equally be applied to other forms of intellectual property (trademarks, copyright, registered designs, and the like). Moreover, the term “patent” is not intended to be limited to an issued patent, but may include a pending patent application or un-filed application or invention disclosure. The term “user” is intended to cover any person interacting with the patent management system. A user may be an inventor, portfolio manager, business manager or patent attorney, for example. The term “change in ownership” is intended to convey instances in which a patent may be assigned from one owner to another, and also instances in which a patentee (or applicant for a patent) undergoes a name change.

FIG. 1 is a schematic view of computer network system 100 according to various embodiments. The computer network system 100 includes patent management system 102 and user terminal 104 communicatively coupled via network 106. In an embodiment, patent management system 102 includes web server 108, application server 110, and database management server 114 which may be used to manage at least operations database 116 and file server 118. Patent management system 102 may be implemented as a distributed system, for example one or more elements of the patent management system 102 may be located across a wide-area network (WAN) from other elements of patent management system 102. As another example, a server (e.g., web server 108, file server 118, database management server 114) may represent a group of two or more servers, cooperating with each other, provided by way of a pooled, distributed, or redundant computing model.

Network 106 may include local-area networks (LAN), wide-area networks (WAN), wireless networks (e.g., 802.11 or cellular network), the Public Switched Telephone Network (PSTN) network, ad hoc networks, personal area networks (e.g., Bluetooth) or other combinations or permutations of network protocols and network types. The network 106 may include a single local area network (LAN) or wide-area network (WAN), or combinations of LAN's or WAN's, such as the Internet. The various devices/systems coupled to network 106 may be coupled to network 106 via one or more wired or wireless connections.

Web server 108 may communicate with file server 118 to publish or serve files stored on file server 118. Web server 108 may also communicate or interface with the application server 110 to enable web-based applications and presentation of information. For example, application server 110 may consist of scripts, applications, or library files that provide primary or auxiliary functionality to web server 108 (e.g., multimedia, file transfer, or dynamic interface functions). Applications may include code, which when executed by one or more processors, run the tools of patent management system 102. In addition, application server 110 may also provide some or the entire interface for web server 108 to communicate with one or more of the other servers in patent management system 102 (e.g., database management server 114).

Web server 108, either alone or in conjunction with one or more other computers in patent management system 102, may provide a user-interface to user terminal 104 for interacting with the tools of patent management system 102 stored in application server 110. The user-interface may be implemented using a variety of programming languages or programming methods, such as HTML (HyperText Markup Language), VBScript (Visual Basic® Scripting Edition), JavaScript™, XML® (Extensible Markup Language), XSLT™ (Extensible Stylesheet Language Transformations), AJAX (Asynchronous JavaScript and XML), Java™, JFC (Java™ Foundation Classes), and Swing (an Application Programming Interface for Java™)

User terminal 104 may be a personal computer or mobile device. In an embodiment, user terminal 104 includes a client program to interface with patent management system 102. The client program may include commercial software, custom software, open source software, freeware, shareware, or other types of software packages. In an embodiment, the client program includes a thin client designed to provide query and data manipulation tools for a user of user terminal 104. The client program may interact with a server program hosted by, for example, application server 110. Additionally, the client program may interface with database management server 114.

Operations database 116 may be composed of one or more logical or physical databases. For example, operations database 116 may be viewed as a system of databases that when viewed as a compilation, represent an “operations database.” Sub-databases in such a configuration may include a matter database a portfolio database, a user database, a mapping database and an analytics database. Operations database 116 may be implemented as a relational database, a centralized database, a distributed database, an object oriented database, or a flat database in various embodiments.

In various embodiments, the tools of the patent management system share a common framework. The framework may have a base organization unit of a matter. In various embodiments, a matter is an issued patent or patent application that includes one or more patent claims. In an embodiment, a matter is generally identified by its patent number or publication number. Identification may mean either identification as it relates to a user of the patent management system or within the patent management system. Thus, a user may see a matter listed as its patent number while internally a database of the patent management system may identify it by a random number. One or more matters may be associated with prior art or cited references stored in a reference or prior art database.

One or more matters may be grouped together to form a portfolio. A matter may also be associated with one or more other matters in a family. A family member may be a priority matter, a continuing (e.g., continuation, divisional) matter, or foreign counter-part member. Family members may be determined according to a legal status database such as INPADOC.

Data stored in a first database may be associated with data in a second database through the use of common data fields. For example, consider entries in the matter database formatted as [Matter ID, Patent Number] and entries in the portfolio database formatted as [Portfolio ID, Matter ID]. In this manner, a portfolio entry in the portfolio database is associated with a matter in the matter database through the Matter ID data field. In various embodiments, a matter may be associated with more than one portfolio by creating multiple entries in the portfolio database, one for each portfolio that the matter is associated with. In other embodiments, one or more patent reference documents may be associated with a patent by creating multiple entries in the patent database, for example. The structure of the database and format and data field titles are for illustration purposes and other structures, names, or formats may be used. Additionally, further associations between data stored in the databases may be created as discussed further herein.

During operation of patent management system 102, data from multiple data sources (internal and external) is imported into or accessed by the operations database 116. Internal sources may include data from the various tools of the patent management system. External sources 120 may include websites or databases associated with foreign and domestic patent offices, assignment databases, WIPO, and INPADOC. In various embodiments, the data is scraped and parsed from the websites if it is unavailable through a database. The data may be gathered using API calls to the sources when available. The data may be imported and stored in the operations database on a scheduled basis, such as daily, weekly, monthly, quarterly, or some other regular or periodic interval. Alternatively, the data may be imported on-demand. The imported data may relate to any information pertaining to patents or patent applications, such as serial numbers, title, cited art, inventor or assignee details and the like.

After data importation, the data may be standardized into a common format. For example, database records from internal or external sources may not be in a compatible format with the operations database. Data conditioning may include data rearrangement, normalization, filtering (e.g., removing duplicates), sorting, binning, or other operations to transform the data into a common format (e.g., using similar date formats and name formats).

FIG. 2 is a block diagram of patent management system 102, according to an example embodiment. Illustrated are user database 202, matter database 204, portfolio database 206, mapping database 208, analytics database 210, display module 212, input module 214, mapping module 216, analytics module 218, tracking module 220 and filtering module 222. In various embodiments, the data stored in databases 202, 204, 206, 208, and 210 may be in the same or multiple physical locations. For example, portfolio database 206 may be stored in one or more computers associated with a portfolio management service. In various embodiments, patent management system 102 mirrors databases stored in other locations. In an embodiment, when a request is made to access data stored in the databases, patent management system 102 determines where the data is located and directs the request to the appropriate location. Similarly, modules 212-222 may be executed across multiple computer systems.

In an example embodiment user database 202 stores data representing users of patent management system 102. The data may include data fields of user credentials including a user ID and password and access rights with respect to patent management system 102. The user ID may be common across the tools of the patent management system. In this manner, access rights of the user with respect to the tools of the patent management system may follow across the various tools of the patent management system. In an example embodiment, different access rights are granted to a user ID between the various tools.

In various embodiments, each user ID has access rights to one or more matters. Similarly, a user ID may have portfolio level access rights. Access rights may be defined according to at least two parameters: read access and write access. Thus, when a user logs into patent management system 102, the user is presented with access only to the matters/portfolios that have been associated with the user ID. More (e.g., additional contact information) or fewer data fields associated with a user may be included in a user entry stored in user database 202.

In an embodiment, matter database 204 stores data representing matters. Each matter may be associated with one or more portfolios. In some embodiments, a matter is associated with no portfolios. In various embodiments, a matter is a foreign or domestic patent or application. Matters may also be inventions that have not yet been filed (e.g., as may be the case within a docketing system). In an embodiment, a matter entry includes data fields representing a matter ID, patent number, publication number, serial number, docketing number, title (e.g., the name of the patent or application), type of the matter (e.g., application, issued patent, PCT application), status of the matter (e.g., issued, abandoned, allowed), a link to the patent office where the matter was filed, a link to a PDF download of the matter, abstract of the matter, inventors of the matter, current owner of the matter, cited references on the face of the matter, filed date, issue date, docket number, and annuity information (e.g., due date, country, and amount due). In some embodiments, other patent reference documents or prior art in any form may be stored and associated with one or more matters. More or fewer data fields associated with a patent may be included in a matter entry stored in matter database 204. In an example embodiment, matter database 204 may store a patent matter database, wherein this database includes data about the patent matters. The data may include, for at least one patent matter, a claim set or statement of invention and a priority date for the claim set or statement of invention. Matter database 204 may also store a database of prior art documents (also known as “references”), wherein the prior art database includes data about the prior art documents. The data may include, for at least one prior art document, a priority date or publication date of the document. One or more of the prior art documents may be associated with a first patent matter in the patent matter database.

In various embodiments, a matter is associated with one or more other matters as a family with a family ID. Family members may be priority documents, continuation patents/applications, divisional patents/applications, and foreign patent/application counterparts. In an embodiment, family information is determined according to an external source such as INPADOC. Patent reference documents and/or other prior art may be manually or automatically stored, cross-cited and associated with related family matters, for example.

Portfolio database 206, in an example embodiment, stores data representing portfolios of one or more matters. Data stored in portfolio database 206 may have been previously generated by a tool of patent management system 102. In various embodiments, a portfolio may be generated by a user using patent management system 102. For example, a user interface may be presented to the user requesting a name for the portfolio and identifiers of matters to be included in the portfolio. In an embodiment, a portfolio entry in portfolio database 206 includes the data fields of portfolio ID and portfolio name. Additionally, a data field for matter ID may also be included in an entry in the portfolio database. Thus, each portfolio may be associated with one or more matters through the use of the matter ID data field. More or fewer data fields associated with a portfolio may be included in a portfolio entry of portfolio database 206.

In an example embodiment, mapping database 208 includes mappings of scope concepts, technology categories, and keywords to one or more matters. In an embodiment, a scope concept is a textual description of what a patent claim is at least limited to. Thus, if a claim comprises A, B, and C a scope concept may be A. In various embodiments, a scope concept for the claim may be broader than A because the claim will still be limited to the broader scope concept. In an embodiment, the mapping database stores mappings between claims and scope concepts. A technology category mapping may indicate that a claim is in a certain technology area. A keyword mapping may indicate that there is an exact match between the keyword and a subset of the claim language.

In various embodiments, analytics database 210 stores data representing calculated analytics on data stored within patent management system 102 or external data sources. In various embodiments, analytics are organized according to an individual matter, a portfolio, or family, or date of an event (such as an assignment recordal, for example). Events may be organized by a date range (for example, all assignments occurring between Corporation A and Corporation B in the last 6 months). The calculated analytics may be based on information gathered from multiple sources such as databases of patent management system 102 and PAIR.

In various embodiments, information for an individual matter may include status (e.g., disclosure received, drafting, filed, completed-waiting examination, in prosecution, allowed, issued), cited prior art, list and type of rejections (e.g., 35 U.S.C. §101, 102, 103) number of claims allowed, office action count, interviews held, IDS statements filed, attorney fees to date, and PTO fees to date. Further metrics for an individual matter stored in analytics database 210 may include, time waiting for examiner, total time in examination, time waiting for PTO while in examination, and time on appeal. Additional prosecution details may include an upcoming docket date (e.g., due dates for office action, IDS due dates, etc.). A claim prosecution history chart may also be stored in analytics database 210 for each matter. The prosecution history may include a history of claim amendments and arguments made in prosecution.

In various embodiments, portfolio and family analytics information may be stored in analytics database 210 based on aggregating the metrics for an individual matter. In an embodiment, the analytics of a family may differ from those in a portfolio as not all family member matters may be part of a portfolio. Additionally, the analytics may be stored for multiple time periods such that comparisons may be made between current metrics and metrics from a year ago (or other time period).

Aggregated metrics may include a total patents and applications, pending and waiting for examination, in prosecution with no claims allowed, in prosecution with some claims allowed, appealed, notice of allowance received, and issued. These metrics may be compiled for both US and international matters in the portfolio. Additional information may include the international portfolio distribution by country. An age distribution of the portfolio may also be compiled. For example the portfolio may be broken down by less than one year old, 1 to 3 years old, 3 to 5 years old, 5 to 10 years old, 10 to 20 years old, and 20 or more years old. Recent filing and issue activity as well as upcoming Ford filing deadlines may be stored in analytics database 210.

In various embodiments, prosecution metrics across a portfolio or family are determined and stored in analytics database 210. This data may include matters waiting for examination, matters in examination, matters appealed, and cases allowed but not yet issued. Analytics with respect office actions may also be compiled and stored. For example success of allowance after a first office action response, a second response, and so forth may be stored in analytics database 210. Additional prosecution analytics may include allowance rate (e.g., 10%) after a telephone interview, allowance after an in-person interview, percentage of interviews with response, number and type of rejection, average time in prosecution (e.g., in months), average time to file a response, and average time to next office action. Further, the list of recently allowed cases, recently appealed cases, stalled cases, and recently abandoned cases may also be stored for each portfolio and family in analytics database 210.

In various embodiments, the results of keyword analysis on one or more matters and/or prior art references may be stored in analytics database 210. The keyword analysis may be based on the occurrences of the keywords in the matter or references to derive a score or keyword overlap.

In various embodiments, data stored in the database for a group of matters in a portfolio or family is analyzed to determine the top (e.g., ten) most cited patents, the top most cited inventors, top most cited prior art owners (e.g., according to assignment documents or the face of the patent), newly (e.g., within the last 60 days) cited prior art owners, and top most cited prior art inventors. This information may be stored in analytics database 210.

In an embodiment, display module 212 is configured to display user interfaces and information retrieved from one or more databases 202-210. If a user is accessing patent management system 102 remotely (e.g., through a web browser) display module 212 may be configured to transmit data representing a user-interface through a network to a user terminal. In various embodiments, display module 212 is configured to generate one or more charts of data stored in databases 202-210. For example, display module 212 may generate a pie chart of the top 10 inventors within a portfolio.

In various embodiments, input module 214 receives data from multiple sources where it may be further processed by one or more other modules and stored in one or more of databases 202-210. In various embodiments, input module 214 or the patent management system 102 may comprise a search engine (not shown) for conducting searches at a patent registry. For example, input module 214 may be configured to utilize one or more APIs to data from one or more patent data stores (e.g., public PAIR, private PAIR, INPADOC, foreign patent offices, patent docketing systems, portfolio management systems, etc). The data may include published patent documents, patent applications, office actions or other patent office correspondence, prior art references, claim mappings, dockets dates, annuity payment data and patent or patent application assignment information. Specific assignment data may include details pertaining to the assignor or assignee (e.g. name, address, nationality, place of incorporation), date of assignment, details of the matter being assigned, or any other data pertaining to assignments or change in ownership that may be recorded at any national or regional patent registry such as the USPTO, WIPO or EPO, for example.

In various embodiments, input module 214 is configured to receive input from one or more user interface elements. For example patent management system 102 may present multiple user interfaces to a user. These user interfaces may enable users to input data directly into databases 202-210, instruct the patent management system to retrieve data from patent data stores, and instruct the patent management system to perform various operations (e.g., analysis) on the data in databases 202-210.

Additionally, input module 214 may be configured to determine the selection of one or more user interface elements by a user and initiate the action associated with the selected user interface element. For example, a user interface element may include a drop-down menu to select a portfolio. Input module 214 may be configured to receive the selection of the portfolio by the user. Then, input module 214 may pass the selection to one or more other modules for further processing. For example, display module 212 may update the drop-down menu to indicate the selection of the portfolio. In other example embodiments, a user may select an assignee name, or technology field, or date range of potential interest (or a combination of these or other aspects of interest), for which the user wishes to be informed of recent or ongoing assignment or change in ownership status. The user may request to be informed regularly (daily, weekly or monthly, for example) of ongoing assignments or changes in ownership by making a selection of the appropriate interface elements.

In various embodiments, input module 214 processes the data that has been inputted and formats it according to the data fields of databases 202-210 as discussed above. In various embodiments processing is completed using a parsing module (not shown). For example, consider a patent publication that a user has directed to be inputted into one or more of the databases. The parsing module may use a combination of automatic image recognition and text analysis to determine the filing date, issue date, title, abstract, and claims of the patent. In some embodiments, the parsing module may flag certain pieces of data that had been determined to be potentially inaccurate (e.g., a number could not be read). A user of patent management system 102 may then examine the flagged data and manually enter the information which is then stored in the appropriate database.

The resulting data that has been parsed by the parsing module may then be entered as an entry in one or more of databases 202-210. This may be accomplished by, for example, formulating an insert SQL query with the parsed information. In various embodiments the parsing module may parse multiple pieces of information before generating a database entry. For example, input module 214 may receive a docket number for an issued patent. The docket number may be combined with the information parsed from the issued patent to form an entry in matter database 204.

In various embodiments, mapping module 216 is configured to facilitate mappings of scope concept, technology categories, and keywords to patent claims of a matter. In an embodiment, mapping signifies association. For example, in conjunction with display module 212 and input module 214, mapping module 216 may present a user interface of patent claims stored in matter database 204 and scope concepts stored in mapping database 208. Input module 214 may receive a selection of one or more patent claims and one or more scope concepts and pass them to mapping module 216. Mapping module 216 may then formulate an SQL query to associate the one or more patents claims with the one or more scope concepts. When executed, the SQL query, may update the mapping database 208 with the associations. In various embodiments, mapping module 216 also allows the creation of new scope concepts, technology categories, and keywords that may be mapped to one or more patent claims. Furthermore, mapping module may present user interfaces that allow a user to rank and rate matters stored in matter database 204.

Mapping module 216 may also allow the generation of claim charts of a plurality of cells. A claim chart may include one or more scope concepts, technology categories, and keywords on one axis and claims of matters in a portfolio on the other axis. The claim chart may include a variety of levels of granularity of scope concepts. Some claims may be mapped to all of the scope concepts while others may not be mapped to any scope concepts. At the cell intersection between a scope concept (or technology category or keyword) and a claim an indication of the mapping may be presented by changing the format of the cell. For example, the cell may be colored blue when a scope concept is mapped and red when not mapped.

In various embodiments, analytics module 218 is configured to examine and run calculations on the data stored in the databases 202-210 to generate the analytics previously discussed. For example, analytics module 218 may formulate an SQL query that retrieves the number of times that a prior art reference has been cited within a portfolio. This query may be run for each prior art cited within the portfolio to determine a list of the most cited (e.g., the top ten) prior art references with a portfolio. In an embodiment, the queries are formulated and run as requested by a user. In an embodiment, once the analytics information has been determined, it is stored within analytics database 210. In various embodiments, queries are formulated and run on a periodic basis (e.g., nightly) and entries in analytics database 210 may be updated to reflect any changes. In other embodiments, the analytics module 218 may in response to user input formulate a query to examine how many times a given patent matter has been assigned or been subject to a change in ownership from one party to another. Other queries analyzing patent assignment data may be run as requested by a user.

In various embodiments, the analytics module 218 is configured to receive input identifying a pool of keywords for a first patent matter in matter database 204 and associated prior art documents in matter database 204. The term keyword is intended to include individual keywords as well as a number of keywords grouped together making up a key phrase, for example. The module 218 may be further configured to perform a keyword analysis on the first patent matter and associated prior art documents based on occurrences of the keywords in the first patent matter and associated prior art documents. The analytics module 218 may be further configured to identify, based on the analysis, keywords occurring uniquely in the first patent matter. In view of their uniquely occurring nature, these keywords may be regarded as claim elements potentially differentiating the claim set or statement of invention over the disclosures contained in the one or more prior art documents.

The tracking module 220, according to an example embodiment, maintains information related to a specific patent, group of patents, or concept. For example, the tracking module may store information related to a patent's prosecution and litigation history (such as office actions or claim amendments). In other example embodiments, the tracking module 220 may store information relating to the assignment of patent applications or patents from one assignee to another, or from an inventor to employer assignee, for example. Information of this nature may be stored by tracking module 220 for defined sets of applications or patents registered in a specified name, and within certain date ranges, for example. Update alerts (e.g., electronic mail, SMS, or similar) may be sent to a user indicating a change in ownership for a patent or patent application. In accordance with example embodiments of the invention, a patent ownership change tracking system or tool is provided to transmit or display to a user on a regular basis a list of changes in patent owners (for example assignments to newly formed companies, or assignments to LLC's, or assignments to corporations, or assignments between existing companies, or assignments of patents or applications older than a certain age). The user may, in some embodiments, select a particular assignee name, date range or technology field of interest in which to receive assignment update alerts.

The present invention is aimed at highlighting new assignments that may be suspicious, noteworthy or at least of interest to a user. The filtering module 222 may be configured accordingly to filter the assignments by type, technology class/subclass or assignee, for example. Assignments that are anticipated may be filtered out such that assignments of new patent applications in a portfolio belonging to existing patent holders are not displayed, for example. Other data or fields pertaining to the assigned matter or the assignment itself may be filtered in a similar manner.

In various embodiments, the filtering module 222 is configured to filter a set of matters according to a user preference. For example, a user may activate a check box that indicates only pending matters should be shown in a user interface. Filtering module 222 may formulate an assignment query consistent with retrieving only pending matters. The results of the query (or any query) may then be shared with display module 212 where the user interface may be updated. The regular alerts may in other example embodiments be pushed to a user terminal 104, an external website, an intranet site, a PDA, smart phone, or other similar handheld device.

In other example embodiments, a patent management system for automatically tracking change in ownership status of patents listed in a database at a patent registry may comprise a hardware-implemented input module configured to receive input from a user identifying one or more patents of interest to be tracked; a search engine configured to perform an automatic search of the patent registry database, based on the input received from the user, and identify changes in ownership status for any one or more of the patents of interest; a hardware-implemented processing module configured to process the data received and format the search results; and a display module for transmitting the search results to the user.

In other example embodiments, a patent assignment tracking tool may comprise hardware-implemented modules, with the tool including an input module for receiving input from a user in relation to one or more assignment criteria relating to at least one patent listed in a patent registry; a search engine configured to perform a search automatically at the patent registry in relation to the at least one patent, based on the input received from the user; and a display module for formatting the data and presenting the results to the user. The search engine may be configured to run the search again at periodic intervals in relation to one or more of the assignment criteria selected by the user, with the periodic interval being selectable by the user to configure the search engine accordingly. The tool may further comprise a filtering module configured to filter the results of the search performed by the search engine, based on one or more of the assignment criteria received from the user.

Some embodiments of the present inventive subject matter include methods for electronic tracking of change in patent ownership status in a patent management system 102. One such embodiment is illustrated in FIG. 3. In some embodiments, a computer-implemented method 300 of automatically tracking change in ownership status of patents listed in a database at a patent registry may comprise receiving input from a user identifying one or more patents of interest to be tracked 302. Based on the input received, the method may include automatically performing a search of the registry database to identify changes in ownership status for any one or more of the patents of interest 304. The method may further include receiving and formatting the search results 306, and transmitting the search results to the user 308. In various embodiments, the computer-implemented method 300 may include performing the search and transmitting the search results automatically on a regular basis 310, thereby notifying the user of any intervening changes in patent ownership status for the patents of interest.

The method may include filtering the search results in accordance with one or more of the fields of enquiry using a hardware-implemented filtering module. The filtered search results may be formatted for display to the user by a hardware-implemented display module, and in further example embodiments, may be displayed to a user in a user interface provided in a handheld or mobile device. In various embodiments, the search results may be automatically retrieved from the patent registry by a hardware-implemented input module and stored in a hardware-implemented tracking module.

The method 300 may further comprise hosting a website wherein the user input is received and the search results are transmitted to a user via the website. In various embodiments, the method may further include receiving the user input into a hardware-implemented input module. The method 300 may include configuring the input module to receive input from a user selecting one or more fields of enquiry for the patents of interest. The one or more fields of enquiry may be selected from a group including: name of assignor; name of assignee; name change in patent holder; type of assignor or assignee; date or date range of assignment; date of incorporation of assignor or assignee; place of incorporation or address of assignor or assignee; nationality of assignor or assignee; nature of assignment; age of patent of interest; technology class of patent of interest; and periodic review interval. The periodic review interval may be determined by a user to set the time at which an update search is performed again repeatedly to identify any intervening changes in ownership for one or more of the patents of interest.

Reference is now made to FIG. 4 which shows a user interface 400 that may be used to facilitate the methods of the present inventive subject matter, according to example embodiments. The user interface 400 may be displayed by display module 212 described above. The user interface may be provided in a website, computer monitor, or mobile device. The type of user elements, names, and layout depicted in FIG. 4 are intended to be an illustration of an example user interface of patent management system 102. Other types of user elements, names, and layouts may be used.

User interface 400 is illustrated with multiple user interface elements. In an example embodiment, a user interface element is a graphical or textual element that a user may interact with to cause an application to perform an assigned action for the interface element. Data representing user interface 400 may be transmitted via network 106 and presented on a display of user terminal 104 through the use of a web browser. A user (e.g., manager of a patent portfolio) may interact with the user interface elements of user interface 400 through the use of an input device (e.g., stylus, cursor, mouse, finger) of the user terminal. In an embodiment, a user selection is based on the coordinates of the input device as it makes contact with the display or where a user “clicks” the mouse. The coordinates are compared to the coordinates of the user input element to determine the selection. The type of user elements, names, and layout depicted in FIG. 4 are intended to be an illustration of an example user interface of patent management system 102. Other types of user elements, names, and layouts may be used. Some elements may be omitted in various embodiments depending on the nature of management tool provided. For example, in using the change in ownership tracking tool of the present invention for specific strategic monitoring, only elements relating to certain fields of enquiry as described above may be presented.

In general, the user interface elements may include my matters 402, patent watches 404, and company watches 406. These elements may be used to select a context/view of the patent management system. For example, my matters 402 lists the patents included within a portfolio of a user, patent watches 404 lists information on patents that the user has indicated the patent management system is to watch, and company watches 406 lists information on companies that the user has indicated the system should watch.

For the patent change in ownership, or patent assignment, tracking tool of the present invention, user interface elements may include assignor 408, assignee 410, date range 412, type of assignee (corporation, LLC, or other entity, for example) 414, date of incorporation 416, or technology class 418. Other user interface elements corresponding to one or more of the other fields of enquiry of the type described herein may be provided. Each user interface element may allow input of a free text search query, or provide drop down menus and date calendars where appropriate to allow a user to select one or more criteria relating to the change in ownership of tracked patents of interest. In example embodiments, a user may request to be notified of changes in ownership or assignments on an ongoing basis (such as daily, weekly or monthly periodic intervals) by making an appropriate selection in user element 420. The results of searches performed by the tool may be displayed in window 422 from which a sub-selection of results may be further filtered using element 424.

Modules, Components and Logic

Certain embodiments are described herein as including logic or a number of components, modules, or mechanisms. Modules may constitute either software modules (e.g., code embodied (1) on a non-transitory machine-readable medium or (2) in a transmission signal) or hardware-implemented modules. A hardware-implemented module is tangible unit capable of performing certain operations and may be configured or arranged in a certain manner. In example embodiments, one or more computer systems (e.g., a standalone, client or server computer system) or one or more processors may be configured by software (e.g., an application or application portion) as a hardware-implemented module that operates to perform certain operations as described herein.

In various embodiments, a hardware-implemented module may be implemented mechanically or electronically. For example, a hardware-implemented module may comprise dedicated circuitry or logic that is permanently configured (e.g., as a special-purpose processor, such as a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC)) to perform certain operations. A hardware-implemented module may also comprise programmable logic or circuitry (e.g., as encompassed within a general-purpose processor or other programmable processor) that is temporarily configured by software to perform certain operations. It will be appreciated that the decision to implement a hardware-implemented module mechanically, in dedicated and permanently configured circuitry, or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.

Accordingly, the term “hardware-implemented module” should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired) or temporarily or transitorily configured (e.g., programmed) to operate in a certain manner and/or to perform certain operations described herein. Considering embodiments in which hardware-implemented modules are temporarily configured (e.g., programmed), each of the hardware-implemented modules need not be configured or instantiated at any one instance in time. For example, where the hardware-implemented modules comprise a general-purpose processor configured using software, the general-purpose processor may be configured as respective different hardware-implemented modules at different times. Software may accordingly configure a processor, for example, to constitute a particular hardware-implemented module at one instance of time and to constitute a different hardware-implemented module at a different instance of time.

Hardware-implemented modules can provide information to, and receive information from, other hardware-implemented modules. Accordingly, the described hardware-implemented modules may be regarded as being communicatively coupled. Where multiple of such hardware-implemented modules exist contemporaneously, communications may be achieved through signal transmission (e.g., over appropriate circuits and buses) that connect the hardware-implemented modules. In embodiments in which multiple hardware-implemented modules are configured or instantiated at different times, communications between such hardware-implemented modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple hardware-implemented modules have access. For example, one hardware-implemented module may perform an operation, and store the output of that operation in a memory device to which it is communicatively coupled. A further hardware-implemented module may then, at a later time, access the memory device to retrieve and process the stored output. Hardware-implemented modules may also initiate communications with input or output devices, and can operate on a resource (e.g., a collection of information).

The various operations of example methods described herein may be performed, at least partially, by one or more processors that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions. The modules referred to herein may, in some example embodiments, comprise processor-implemented modules.

Similarly, the methods described herein may be at least partially processor-implemented. For example, at least some of the operations of a method may be performed by one or more processors or processor-implemented modules. The performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the processor or processors may be located in a single location (e.g., within a home environment, an office environment or as a server farm), while in other embodiments the processors may be distributed across a number of locations.

The one or more processors may also operate to support performance of the relevant operations in a “cloud computing” environment or as a “software as a service” (SaaS). For example, at least some of the operations may be performed by a group of computers (as examples of machines including processors), with these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., Application Program Interfaces (APIs).)

Electronic Apparatus and System

Example embodiments may be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Example embodiments may be implemented using a computer program product, e.g., a computer program tangibly embodied in an information carrier, e.g., in a machine-readable medium for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers.

A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.

In example embodiments, operations may be performed by one or more programmable processors executing a computer program to perform functions by operating on input data and generating output. Method operations can also be performed by, and apparatus of example embodiments may be implemented as, special purpose logic circuitry, e.g., an FPGA or an ASIC.

The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In embodiments deploying a programmable computing system, it will be appreciated that that both hardware and software architectures require consideration. Specifically, it will be appreciated that the choice of whether to implement certain functionality in permanently configured hardware (e.g., an ASIC), in temporarily configured hardware (e.g., a combination of software and a programmable processor), or a combination of permanently and temporarily configured hardware may be a design choice. Below are set out hardware (e.g., machine) and software architectures that may be deployed, in various example embodiments.

Example Machine Architecture and Machine-Readable Medium

FIG. 5 is a block diagram of machine in the example form of a computer system 500 within which instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed. In alternative embodiments, the machine operates as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine may operate in the capacity of a server or a client machine in server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a PDA, a cellular telephone, a web appliance, a network router, switch or bridge, or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.

The example computer system 500 includes a processor 502 (e.g., a central processing unit (CPU), a graphics processing unit (GPU) or both), a main memory 504 and a static memory 506, which communicate with each other via a bus 508. The computer system 500 may further include a video display unit 510 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). The computer system 500 also includes an alphanumeric input device 512 (e.g., a keyboard), a user interface (UI) navigation device 514 (e.g., a mouse), a disk drive unit 516, a signal generation device 518 (e.g., a speaker) and a network interface device 520.

Machine-Readable Medium

The disk drive unit 516 includes a machine-readable medium 522 on which is stored one or more sets of instructions and data structures (e.g., software) 524 embodying or utilized by any one or more of the methodologies or functions described herein. The instructions 524 may also reside, completely or at least partially, within the main memory 504 and/or within the processor 502 during execution thereof by the computer system 500, with the main memory 504 and the processor 502 also constituting machine-readable media.

While the machine-readable medium 522 is shown in an example embodiment to be a single medium, the term “machine-readable medium” may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more instructions or data structures. The term “machine-readable medium” shall also be taken to include any tangible medium that is capable of storing, encoding or carrying instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present invention, or that is capable of storing, encoding or carrying data structures utilized by or associated with such instructions. The term “machine-readable medium” shall accordingly be taken to include, but not be limited to, solid-state memories, and optical and magnetic media. Specific examples of machine-readable media include non-volatile memory, including by way of example semiconductor memory devices, e.g., Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable

Programmable Read-Only Memory (EEPROM), and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.

Transmission Medium

The instructions 524 may further be transmitted or received over a communications network 526 using a transmission medium. The instructions 524 may be transmitted using the network interface device 520 and any one of a number of well-known transfer protocols (e.g., HTTP). Examples of communication networks include a local area network (“LAN”), a wide area network (“WAN”), the Internet, mobile telephone networks, Plain Old Telephone (POTS) networks, and wireless data networks (e.g., WiFi and WiMax networks). The term “transmission medium” shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine, and includes digital or analog communications signals or other intangible media to facilitate communication of such software.

Although an embodiment has been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. The accompanying drawings that form a part hereof, show by way of illustration, and not of limitation, specific embodiments in which the subject matter may be practiced. The embodiments illustrated are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein. Other embodiments may be utilized and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. This Detailed Description, therefore, is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled.

Such embodiments of the inventive subject matter may be referred to herein, individually and/or collectively, by the term “invention” merely for convenience and without intending to voluntarily limit the scope of this application to any single invention or inventive concept if more than one is in fact disclosed. Thus, although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description.

Abstract

The Abstract of the Disclosure is provided to comply with 37 C.F.R. §1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment. 

1. A computer-implemented method of automatically tracking change in ownership information of a patent matter listed in a database at a patent registry, the method comprising: receiving input from a user identifying the patent matter, the input further including data associated with a plurality of fields of enquiry relating to a change in ownership information of the patent matter, wherein the plurality of selected fields of enquiry includes two or more of the following fields of enquiry: a name change in an owner of the patent matter; a date or date range of assignment of the patent matter; a date of incorporation of an assignor or an assignee of the patent matter; a place of incorporation or address of an assignor or assignee of the patent matter; a nationality of an assignor or an assignee of the patent matter; and a nature of an assignment of the patent matter; causing the presentation of the at least two fields of enquiry simultaneously in a single user interface; automatically performing a search of the patent registry database on a repeat basis, wherein the search result identifies one or more intervening changes in ownership information of the patent matter; receiving and formatting the search result; and transmitting the search result to the user for display in the single user interface.
 2. The computer-implemented method of claim 1, the method further comprising hosting an interactive website and receiving input from the user, and presenting the search result to the user, via the website.
 3. The computer-implemented method of claim 1, including displaying the search result to a user in a handheld or mobile device.
 4. The computer-implemented method of claim 1, including receiving the user input into a hardware-implemented input module.
 5. The computer-implemented method of claim 4, including configuring the input module to receive input from a user selecting the plurality of fields of enquiry relating to the change of ownership information of the patent matter.
 6. The computer-implemented method of claim 1, wherein the plurality of fields of enquiry further includes the name of an inventor assignor or inventor assignee of the patent matter.
 7. The computer-implemented method of claim 1, including filtering the search result in accordance with one or more of the fields of enquiry using a hardware-implemented filtering module.
 8. The computer-implemented method of claim 7, including formatting the filtered search result for display to the user using a hardware-implemented display module.
 9. The computer-implemented method of claim 1, including retrieving the search result automatically from the patent registry using a hardware-implemented input module.
 10. The computer-implemented method of claim 1, including storing the received search result in a hardware-implemented tracking module.
 11. A patent management system for automatically tracking change in ownership information of a patent matter listed in a database at a patent registry, the system comprising: at least one hardware-implemented module, executing on one or more processors, configured to: receive input from a user identifying the patent matter, the input further including data associated with a plurality of fields of enquiry relating to a change in ownership information of the patent matter, wherein the plurality of selected fields of enquiry includes two or more of the following fields of enquiry: a name change in an owner of the patent matter; a date or date range of assignment of the patent matter; a date of incorporation of an assignor or an assignee of the patent matter; a place of incorporation or address of an assignor or assignee of the patent matter; a nationality of an assignor or an assignee of the patent matter; and a nature of an assignment of the patent matter; cause the presentation of the at least two fields of enquiry simultaneously in a user interface; automatically perform a search of the patent registry database on a repeat basis, wherein the search result identifies one or more intervening changes in ownership information of the patent matter; receive and format the search result; and transmit the search result to the user for display in the user interface.
 12. The system of claim 10, wherein the at least one hardware-implemented module is configured to present user-selectable interface elements in a graphic user interface, the interface elements allowing data entry by the user corresponding to at least one of the plurality of fields of enquiry.
 13. The system of claim 10, further comprising a filtering module for filtering the search result, based on the one or more fields of enquiry.
 14. The system of claim 12, wherein the data entered by the user further includes the name of an inventor assignor or inventor assignee of the patent matter.
 15. A patent assignment tracking tool comprising hardware-implemented modules, the tool including: an input module for receiving input from a user in relation to one or more assignment criteria relating to a patent matter listed in a patent registry, the assignment criteria including data associated with a plurality of selected fields of enquiry relating to the patent matter, wherein the plurality of selected fields of enquiry includes two or more of the following fields of enquiry: name change in patent holder; date or date range of assignment; date of incorporation of assignor or assignee; place of incorporation, or address, of assignor or assignee; nationality of assignor or assignee; and nature of assignment; a user interface for receiving input from a user facilitating the presentation of each field of enquiry simultaneously; a search engine configured to perform a search, on a predetermined regular basis, automatically at the patent registry in relation to the patent, based on the input received from the user; a display module for formatting the data and presenting the result to the user in a single user interface.
 16. The assignment tracking tool of claim 15, further comprising a filtering module configured to filter the result of the search performed by the search engine, based on one or more of the assignment criteria received from the user.
 17. A patent portfolio management system comprising: a network; a patent matter database, accessible on the network, and including data about the patent matters, and a server, operatively connected to the network, wherein the server includes: a processor, a memory, software operable on the processor to: receive input from a user identifying a patent matter, the input further including data associated with a plurality of fields of enquiry relating to a change in ownership information of the patent matter, wherein the plurality of selected fields of enquiry includes two or more of the following fields of enquiry: a name change in an owner of the patent matter; a date or date range of assignment of the patent matter; a date of incorporation of an assignor or an assignee of the patent matter; a place of incorporation or address of an assignor or assignee of the patent matter; a nationality of an assignor or an assignee of the patent matter; and a nature of an assignment of the patent matter; cause the presentation of the at least two fields of enquiry simultaneously in a user interface; automatically perform a search of the patent registry database on a repeat basis, wherein the search result identifies one or more intervening changes in ownership information of the patent matter; receive and format the search result; and transmit the search result to the user for display in the user interface.
 18. A non-transitory machine-readable medium containing instructions which, when executed by a machine, cause the machine to perform the operations of: receiving input from a user identifying the patent matter, the input further including data associated with a plurality of fields of enquiry relating to a change in ownership information of the patent matter, wherein the plurality of selected fields of enquiry includes two or more of the following fields of enquiry: a name change in an owner of the patent matter; a date or date range of assignment of the patent matter; a date of incorporation of an assignor or an assignee of the patent matter; a place of incorporation or address of an assignor or assignee of the patent matter; a nationality of an assignor or an assignee of the patent matter; and a nature of an assignment of the patent matter; causing the presentation of the at least two fields of enquiry simultaneously in a single user interface; automatically performing a search of the patent registry database on a repeat basis, wherein the search result identifies one or more intervening changes in ownership information of the patent matter; receiving and formatting the search result; and transmitting the search result to the user for display in the single user interface. 